Repository navigation
Add complexity consistency audit; fix NonTautology, MinimumWeightDecoding and MaxCut<One> complexities - #1219
Conversation
The audit substitutes each reduction path's composed parameter transform into the target's registered complexity and flags sources whose registered bound is beaten by the derived one. It surfaced two wrong entries: - NonTautology claimed the 3-SAT bound 1.307^n, but unbounded-width DNF is CNF-SAT by De Morgan duality; best known is 2^n. - MinimumWeightDecoding claimed 2^(0.0494 m), an average-case exponent for random codes; no worst-case bound below exhaustive search is known. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agentic Review ReportPR #1219 at Structural
Quality
Feature test
FindingsImportant
Minor
Fix: decide from the growth domain instead. For example, add Fix: make the guard explicit. Skip (count as unknown) when Verdict: the NonTautology fix and the audit tool are sound. Finding 1 should be addressed before merge: the new MWD paper statement is mathematically false. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1219 +/- ##
=======================================
Coverage 97.18% 97.18%
=======================================
Files 1146 1146
Lines 151076 151076
=======================================
Hits 146819 146819
Misses 4257 4257 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
- MinimumWeightDecoding: register 2^(0.773 m). A consistent system has a solution of weight <= rank(H); the cheaper of coset and low-weight enumeration balances at r/m ~ 0.2271. Derivation added to the paper. - NonTautology paper text: state the SETH barrier instead of claiming exhaustive search is best known. - Audit: skip aggregate-only edges, skip targets whose complexity the growth domain cannot analyze before substituting, count missing complexities separately, and drop the string-based polynomial split. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Addressed the Agentic Review Report in ea882aa:
New audit result: 6 flagged variants. Fixing MinimumWeightDecoding exposed another stale entry, Gates: |
|
Please kindly check the following items (PR #1219):
Join the discussion on Zulip — feel free to ask questions or leave feedback there. |
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Retargeted onto |
GiggleLiu
left a comment
There was a problem hiding this comment.
Agentic Review Report
PR #1219. Reviewed head 77fb850f21d01330111c081965c715fabfff59b2 against own base 0daa9a8265aefe40983beeba0464f8feea8c3316 (feat/binary-ilp-to-sat). Read-only review; no tracked edits, pushes, PR comments or merges.
Verdict
HOLD for the new MinimumWeightDecoding complexity entry. The NonTautology exponential-base correction is justified; the decoding bound is valid but already beaten by elementary exact meet-in-the-middle.
Structural
Reviewed the five-file own-base diff, full audit example, model definitions and complexity registrations, relevant manual text and metadata test. The audit skips aggregate-only and Turing edges, accounts for unavailable transforms, and enumerates simple paths of at most three witness hops. It is a heuristic consistency report, not a proof that an algorithm is optimal or that every apparent violation is sound.
Quality
The new MWD test pins the literal 0.773, so it cannot detect that the chosen algorithm is not best known. The proposed entropy/coset derivation gives a valid upper bound, but checking only that derivation misses a much simpler smaller bound. The printed audit conclusions also need caution when a growth is only a widened upper bound; a future exactness API alone does not establish monotonicity of arbitrary complexity expressions.
Feature test
A separate Python meet-in-the-middle solver was checked against exhaustive minimum-weight search on 1,320 deterministic arbitrary binary matrix/syndrome cases, with 0–10 columns, 0–5 rows, empty/rank-deficient/infeasible cases included. All agreed. The construction and running-time derivation below are independent of average-case decoding assumptions. No full exact-head audit rerun or CLI install was performed in this review. git diff --check BASE...HEAD passed.
Findings
- Important:
2^(0.773*num_cols)is not a best-known worst-case bound.src/models/algebraic/minimum_weight_decoding.rs:182-185, with corresponding paper discussion atdocs/paper/reductions.typ:10995. Split the m columns as H=[H_L H_R]. Enumerate every left half-word and keep the minimum Hamming weight witness for each syndrome H_L x_L. Enumerate right half-words and look up s xor H_R x_R, minimizing the sum of the two stored weights. Every full word has a unique left/right split, and retaining the lightest half-word per syndrome cannot discard a better completion. Sorting or hashing gives O*(2^ceil(m/2)) worst-case time with O*(2^floor(m/2)) space; deterministic sorting adds only polynomial factors. Thus the new entry is already worse than a straightforward exact O*(2^(m/2)) algorithm. Register at least that sound bound after checking for stronger known worst-case algorithms, and state the space requirement. No assumption that the code is random is involved. - Minor: qualify the entropy-count sentence. The bound
sum_{w≤r} C(m,w)≤2^(m h(r/m))applies for r≤m/2. For r>m/2 use coset enumeration directly. The final 0.773 upper bound remains valid, but the paper's intermediate enumeration statement is too broad. - Minor: update PR description. Its table still says the MWD change ends at
2^num_cols; the head registers2^(0.773*num_cols).
Primary-source verification
The CNF-SAT/SETH distinction is supported by Cygan et al., On Problems as Hard as CNFSAT: sub-2^n improvements do not imply a constant exponential base below 2. De Morgan duality directly transfers the unbounded-width DNF non-tautology search to CNF-SAT. The MWD counterexample to best-known status above is a complete direct algorithmic derivation, checked independently on small instances; it is not an inference from an average-case ISD exponent. Attempts to open the IACR decoding-estimator paper returned HTTP 403, so this report does not claim a complete literature survey or a final optimal exponent.
GitHub PR policy audit
GATE: PASS. This is the harm-signals gate only; it does not override the correctness verdict above.
- harm.secrets (
security.no-secrets): OK. No obvious credential/private-key/token addition detected in the own-base diff. - harm.dangerous-files (
git.harm-signals): OK. No conflict markers, unexplained archives or local scratch/config artifacts detected. - harm.generated-artifacts (
code.generated-artifacts): OK. No blacklisted generated graph/schema/example exports or build targets added. Test oracle fixtures are intentional test inputs; small browser contracts/fonts are intentional source assets. - harm.cache (
code.generated-cache): OK. No cache directories added. - harm.debug-leftovers (
code.debug-leftovers): OK. No debugger, breakpoint or temporary debug print addition detected. Browser performance marks are deliberate verification instrumentation. - pr.description-quality (
github.pr-description-quality): ISSUE. Stale scope/final-bound details identified above; update before approval. - pr.traceable (
github.prs-traceable): OK. The PR states its purpose and own stack context.
Policy evidence: own-base name/status, numstat and patch inspection; added-line secret/conflict/debug scan; git diff --check; gh-axi pr view 1219 --full --comments --reviews. No claim of exhaustive secret scanning. The parent reviewer owns the final head/base recheck before any merge.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
0.7907 rounded 2.372/3 = 0.79067 up, so the audit flagged the One variant as beaten by its own i64 variant. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Splitting the columns of H into halves and matching H_L x_L against s + H_R x_R is exact and beats the 2^(0.773 m) rank argument on every instance. The paper now cites Stephens-Davidowitz and Vaikuntanathan (FOCS 2019) for SETH-optimality of 2^k in the coset rank k. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GiggleLiu
left a comment
There was a problem hiding this comment.
Agentic Review Report
Re-review of final commit 22b3c0b9eae0add3ca242cc37a93519365e57327: PASS. This supersedes my earlier request for changes; the decoding-bound blocker is resolved.
Structural and semantic review
The meet-in-the-middle decoding bound is valid: store the minimum-weight left word for each syndrome, then enumerate right words and look up the complementary syndrome. The manual now states the floor/ceil split, time and space, and distinguishes block length from the code dimension in the SETH citation. An independent implementation agreed with exhaustive search on 1,800 deterministic cases, including odd splits, deficient rank, and infeasible systems. NonTautology's NP-completeness and bound are consistent with CNF-SAT duality; the unweighted MaxCut exponent removes the rounding discrepancy.
Quality and feature validation
The audit uses existing graph/transform APIs and reports candidates requiring manual checks of monotonicity, tightness, and reduction cost. Its failure diagnostics now label the correct side. No unintended trait, model behavior, dependency or generated-file changes were found. Independent quality and policy review passed.
make check: 7,194 tests passed, zero failed/ignored/filtered; formatting and all-feature Clippy passed.make paperpassed.- Real CLI creation, inspection and brute-force solving passed for the affected models; the changed unweighted MaxCut variant returned
Max(6)and displayed the corrected bound. - The audit completed over 2,358 paths: 533 consistent, 17 candidate improvements, 123 incomparable, 1,676 unsupported-growth, nine uncomposable, and zero missing-complexity paths.
- All nine GitHub checks passed on this exact commit. Codecov reports 97.18% project coverage and all modified coverable lines covered.
- Rechecked discussion comments, reviews, inline comments, CI and Codecov; no outstanding findings remain in this PR.
The six remaining catalog candidates reported by the audit require separate mathematical follow-up; this PR does not claim they are proved improvements.
The previous catalog used an average-case decoding exponent as a worst-case guarantee and a fixed-width SAT bound for unrestricted DNF non-tautology. This corrects NonTautology to
2^num_vars, MinimumWeightDecoding to meet-in-the-middle2^(0.5 * num_cols), and the unit-weight MaxCut expression to the same2^(2.372 * num_vertices / 3)form as its integer-weight variant.The manual gives the decoding algorithm's floor/ceil split, time and space requirements, and distinguishes block length from the code dimension used by the cited SETH lower bound. It also corrects NonTautology's complexity class to NP-complete.
The new
complexity_consistency_auditexample enumerates paths of one to three witness reductions and compares composed growth bounds. Findings are candidates requiring manual checks of monotonicity, tightness, and reduction cost. A known growth form is not a monotonicity certificate. Turing and aggregate-only paths are excluded; unsupported and missing metadata are reported separately. Failure diagnostics now pair the reason with the side that actually failed.Validation at
22b3c0b9e:make check: 7,194 tests passed, none failed, ignored, or filtered; formatting and all-target/all-feature Clippy passed.make paperpassed.MaxCut/SimpleGraph/Onevariant reports the corrected bound and its canonical example solves toMax(6).The six remaining audit candidates concern SpinGlass/DecisionSpinGlass/GraphPartitioning through weighted MaxCut, MaximumSetPacking variants through IndependentSet, and ThreeDimensionalMatching through decoding. They are reported for manual follow-up rather than silently changing unrelated catalog entries.